场景视点控制 Sample详情
最后更新时间:2019年6月17日
场景视点,即观察场景的位置点,不同的视点展现给用户的界面效果不同。可以通过用户手势交互操作来随意改变视点,也可以通过接口精确设置场景视点。
通过手指在界面上滑动、缩放来改变场景视点,手势交互功能已经集成到场景视图控件SceneView中。
从接口层面上来看,场景视点对应ViewPoint类,视点由四个参数控制,对应四个字段属性:
字段 | 说明 |
---|---|
com.zondy.mapgis.core.geometry.Dot3D focalPoint | 相机的焦点 |
double headingDeg | 相机的航向角,单位为度,顺时针为正 |
double pitchDeg | 相机的俯仰角,范围(-90 ~ -10)单位为度 |
double range | 相机到相机焦点的距离 |
首先根据各项参数构造视点对象,然后利用jumptoViewPoint()方法跳转到制定的视点,并且伴随动画效果。此种模式便于从非常精确的视点查看场景,来达到手势交互难于控制的效果。也可以利用SceneView的getCurrentViewPoint()方法获取当前视点。
//视图跳转到模型所在地 Dot3D dot = new Dot3D(86.481666, 27.627293, 3.24); //相机的焦点、相机的航向角、相机的俯仰角、相机到相机焦点的距离 Viewpoint point = new Viewpoint(dot, 19.72459976, -41.6339, 126331); //要跳转到的视点、持续时间,单位秒 mSceneView.jumptoViewPoint(point, 2);